﻿using System;
using System.Collections.Generic;
using System.Windows.Data;
using SoftSource.MVVMC;
using SoftSource.Timecard.Web.Data;

namespace SoftSource.Timecard.ViewModelInterfaces
{
    public interface IEntryProjectCategoryAssociationEditorViewModelConsume : IDataViewModelConsume
    {
        #region Properties

        int ProjectID { get; set; }
        int CategoryID { get; set; }
        PagedCollectionView Projects { get; }
        PagedCollectionView Categories { get; }

        #endregion Properties

        #region Methods

        Action Completed { get; }

        #endregion Methods
    }
    public interface IEntryProjectCategoryAssociationEditorViewModelService : IDataViewModelService
    {
        #region Properties

        EntryLog Entry { get; set; }
        IEnumerable<ProjectSummary> ProjectSource { get; set; }
        IEnumerable<CategorySummary> CategorySource { get; set; }
        IEnumerable<ProjectCategorySummary> ProjectCategories { get; set; }

        #endregion Properties

        #region Methods

        Action Completed { get; set; }

        #endregion Methods
    }
    public interface IEntryProjectCategoryAssociationEditorViewModel :
        IDataViewModel, 
        IEntryProjectCategoryAssociationEditorViewModelConsume, 
        IEntryProjectCategoryAssociationEditorViewModelService
    {
    }
}
